package com.zbkj.common.model.client.digital;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
import java.util.Map;

@Data
@TableName(value = "eb_client_dg_video", autoResultMap = true)
public class DgVideo implements Serializable {
    @TableId(type = IdType.AUTO)
    private Integer id;

    @TableField("link_id")
    private String linkId;

    @TableField("name")
    private String name;

    @TableField("video_url")
    private String videoUrl;

    @TableField("oss_video_url")
    private String ossVideoUrl;

    @TableField("user_id")
    private Integer userId;

    @TableField("mer_id")
    private Integer merId;

    @TableField("subtitle_data_url")
    private String subtitleDataUrl;

    @TableField("oss_subtitle_data_url")
    private String ossSubtitleDataUrl;

    @TableField("preview_url")
    private String previewUrl;

    @TableField("oss_preview_url")
    private String ossPreviewUrl;

    @TableField("duration")
    private Integer duration;

//    @TableField("audio_urls")
//    private List<String> audioUrls;

    @TableField(typeHandler = JacksonTypeHandler.class)
    private List<String> audioUrls;

    @TableField(typeHandler = JacksonTypeHandler.class)
    private Map<String, Object> saveLocation;

    @TableField("status")
    private Integer status;

    @TableField("progress")
    private Integer progress;

    @TableField("msg")
    private String msg;

    @TableField("audio_type")
    private String audioType;

    @TableField("audio_man_id")
    private String audioManId;

    @TableField("voice_id")
    private Integer voiceId;

    @TableField("dp_man_id")
    private String dpManId;

    @TableField("source")
    private String source;

    @TableField("source_id")
    private Integer sourceId;

    @TableField("is_del")
    private Integer isDel;

    @TableField("is_common_dp")
    private Integer isCommonDp;

    @TableField("dp_preview_url")
    private String dpPreviewUrl;

    @TableField("create_time")
    private Date createTime;

    @TableField("update_time")
    private Date updateTime;
} 